package com.itheima.tlias.pojo;

import com.alibaba.excel.annotation.ExcelProperty;
import com.itheima.tlias.converter.DegreeConverter;
import com.itheima.tlias.converter.GenderConverter;
import com.itheima.tlias.converter.IsCollegeConverter;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

/**
 * TODO
 *
 * @Author mr.luo
 * @Date 09 4月 2025 20:52
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Student {
//    @ExcelProperty("id")
    private Long id; // 非必须ID
    @ExcelProperty("姓名")
    private String name; // 非必须姓名
    @ExcelProperty("学号")
    private String no; // 非必须学号
    @ExcelProperty(value = "性别",converter = GenderConverter.class)
    private Integer gender; // 非必须性别(1: 男, 2: 女)
    @ExcelProperty("手机号")
    private String phone; // 非必须手机号
    @ExcelProperty("身份证号")
    private String idCard; // 非必须身份证号
    @ExcelProperty(value = "是否来自院校", converter = IsCollegeConverter.class )
    private Integer isCollege; // 非必须是否是院校学生 (1: 是, 0: 否)
    @ExcelProperty("居住地址")
    private String address; // 非必须联系地址
    @ExcelProperty(value = "学历", converter = DegreeConverter.class )
    private Integer degree; // 非必须学历(1: 初中, 2: 高中, 3: 大专, 4: 本科, 5: 硕士, 6: 博士)
    @ExcelProperty("毕业时间")
    private String graduationDate; // 非必须毕业时间
//    @ExcelProperty("违纪次数")
    private Integer violationCount; // 非必须违纪次数
//    @ExcelProperty("违纪扣分")
    private Integer violationScore; // 非必须违纪扣分
    @ExcelProperty("班级")
    private Integer clazzId; // 非必须班级ID
//    @ExcelProperty("创建时间")
    private LocalDateTime createTime; // 非必须创建时间
//    @ExcelProperty("最后更新时间")
    private LocalDateTime updateTime; // 非必须更新时间
}
